1. Field of the Invention
The invention relates to error detection and, in particular, residue-based error detection.
2. Description of the Related Art
High energy particles from cosmic radiation or alpha particles in packaging materials cause soft errors affecting electronic components. Such radiation events can cause charge collection at sensitive circuit nodes, corrupting those circuit states without causing permanent damage. The radiation events primarily affect storage elements (RAM cells, latches, flip-flops) which hold a state (bit values) for a relatively long time. Radiation events and altitude affect soft error rates of different storage elements. In addition, soft error rates (SER) depend on voltage and circuit characteristics.
Residue checking has been employed to detect errors (transient or permanent) for arithmetic operations, such as add, multiply and divide. Residue-based error detection typically relies upon a property of arithmetic operations that the residue of the arithmetic operation's result is equal to the residue of the result of the arithmetic operation as applied to the residues of the operands of the arithmetic operation. For example, if:c=a+b, thenc mod N=((a mod N)+(b mod N)) mod N. 
Unfortunately, this property does not apply to logical bit operations, such as AND, OR, or Shift. Voting and duplication are employed to detect errors for the units that perform logical bit operations. Although execution units that implement AND and OR operations are relatively simple and can be easily duplicated, shifters do not share these same characteristics. Shifters are relatively large units, and duplication of shifters for error detection incurs significant overhead. Accordingly, a technique is desired to protect shifters without shifter duplication.